home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Merciful 2
/
Merciful - Disc 2.iso
/
software
/
m
/
maxonc++3.dms
/
maxonc++3.adf
/
Libs
/
MODULA2
/
RCT.def
< prev
Wrap
Text File
|
1978-10-11
|
12KB
|
241 lines
(*****************************************************************************
* *
* RCT-Schnittstelle für Modula-2 ( M2Amiga V 4.0 ) *
* *
* Version 1.5 *
* *
******************************************************************************)
DEFINITION MODULE RCT {"rct.library",15};
FROM SYSTEM IMPORT ADDRESS;
FROM IntuitionD IMPORT WindowPtr,ScreenPtr,RequesterPtr,MenuPtr,IDCMPFlagSet;
FROM GraphicsD IMPORT ViewModeSet;
FROM ExecD IMPORT MsgPortPtr,MessagePtr;
IMPORT R;
CONST
DSIZE = 130; (* Größe des Feldes, in dem der Pfad gespeichert
wird *)
FSIZE = 30; (* Größe des Felder, in dem der Dateiname gespeichert
wird *)
PSIZE = FSIZE+DSIZE+1;
(* Größe des Feldes, in dem der komplette Pfadname
gespeichert wird *)
WILDLENGTH = 30; (* Größe der Felder 'Hide' und 'Show' *)
TYPE
FileReqFlags = (showInfo,extendedSelect,caching,font,infoGad,hideWild,
absoluteXY,purge,noHalfCache,noSort,noDrag,save,load,
dirOnly,noDepth,c15,c16,c17,c18,c19,c20,c21,c22,c23,
c24,c25,c26,c27,c28,c29,c30,c31);
FileReqFlagSet = SET OF FileReqFlags;
(* Struktur, in der alle für das Dateiauswahlrequester relevanten Werte
gespeichert sind. Wenn Sie sich nicht näher damit befassen wollen,
brauchen Sie nur die gesamte Struktur mit Nullen füllen. Sie müssen
dann nur noch 'dir', 'file', 'path' und 'flags' setzen.
Sehen Sie bitte, wenn Sie an der Bedeutung der einzelnen Punkte
interessiert sind, in dem Text 'rctdef.h' nach!
*)
RCTFileRequester = RECORD
version : INTEGER;
title : ADDRESS;
dir : ADDRESS;
(* Hier müssen Sie einen Pointer auf ein Feld ein-
tragen, das aus DSIZE+1 Chars besteht
( ARRAY [0..DSIZE] ). *)
file : ADDRESS;
(* Hier müssen Sie einen Pointer auf ein Feld ein-
tragen, das aus FSIZE+1 Chars besteht
( ARRAY [0..FSIZE] ). *)
path : ADDRESS;
(* Hier müssen Sie einen Pointer auf ein Feld ein-
tragen, das aus DSIZE+FSIZE+2 Chars besteht
( ARRAY [0..DSIZE+FSIZE+1] ). *)
wp : WindowPtr;
maxex,
lines,
columns,
devcolumns : INTEGER;
flags : FileReqFlagSet;
dircol,filecol,devcol,
fontcol,sizecol,detcol,
blockcol,gadcol,textcol,
stringnamecol,stringgadcol,
boxcol,gadboxcol : INTEGER;
pad : ARRAY [0..17] OF CARDINAL;
datestamp : ARRAY [0..2] OF LONGINT;
left,top,fonty,fontstyle : INTEGER;
esstruct : ADDRESS;
hide,show : ARRAY [0..WILDLENGTH+1] OF CHAR;
filebufpos,filedisppos,
dirbufpos,dirdisppos,
hidebufpos,hidedisppos,
showbufpos,showdisppos : INTEGER;
mem,mem2,lock : ADDRESS;
privbuf : ARRAY [0..DSIZE+1] OF CHAR;
fileinfo : ADDRESS;
nument,numhidd,
filestart,devstart : INTEGER;
END;
PROCEDURE RctLoad(pfad{R.A0}:ADDRESS):ADDRESS; CODE -30;
PROCEDURE RctFree(rctadr{R.A0}:ADDRESS):BOOLEAN; CODE -36;
PROCEDURE RctAddr(rctadr{R.A0}:ADDRESS; art{R.D0}:BOOLEAN;
id{R.D1}:CARDINAL):ADDRESS; CODE -42;
PROCEDURE ReqCenter(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
window{R.A2}:WindowPtr):BOOLEAN; CODE -48;
PROCEDURE ReqDraw(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
window{R.A2}:WindowPtr):BOOLEAN; CODE -54;
PROCEDURE ReqDrawWindow(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
screen{R.A2}:ScreenPtr; titel{R.A3}:ADDRESS):WindowPtr; CODE -264;
PROCEDURE ReqEnd(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
window{R.A2}:WindowPtr):BOOLEAN; CODE -60;
PROCEDURE ReqWait(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
messageart{R.A2}:ADDRESS):CARDINAL; CODE -270;
(* bei 'messageart' müssen Sie die Adresse Ihres IDCMPFlagSets angeben! *)
PROCEDURE GetReqStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
item{R.D0}:CARDINAL):LONGINT; CODE -66;
PROCEDURE SetReqStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
item{R.D0}:CARDINAL; wert{R.D1}:LONGINT):BOOLEAN; CODE -72;
PROCEDURE SetReqText(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr; id{R.D0}:CARDINAL;
string{R.A2}:ADDRESS):BOOLEAN; CODE -78;
PROCEDURE GetReqText(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL):ADDRESS; CODE -84;
PROCEDURE GetTextStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL):LONGINT; CODE -90;
PROCEDURE SetTextStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL;
wert{R.D2}:LONGINT):BOOLEAN; CODE -96;
PROCEDURE SetGadText(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; string{R.A2}:ADDRESS):BOOLEAN; CODE -102;
PROCEDURE GetGadText(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL):ADDRESS; CODE -108;
PROCEDURE GetGadStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL):LONGINT; CODE -114;
PROCEDURE SetGadStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL;
wert{R.D2}:LONGINT):BOOLEAN; CODE -120;
PROCEDURE RedrawGadgets(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL):BOOLEAN; CODE -126;
PROCEDURE RedrawGad(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; anzahl{R.D1}:CARDINAL):BOOLEAN; CODE -132;
PROCEDURE ActiveGad(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL):BOOLEAN; CODE -138;
PROCEDURE SetStrGadText(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; string{R.A2}:ADDRESS):BOOLEAN; CODE -144;
PROCEDURE GetStrGadText(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL):ADDRESS; CODE -150;
PROCEDURE GetStrGadStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL):LONGINT; CODE -162;
PROCEDURE SetStrGadStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL;
wert{R.D2}:LONGINT):BOOLEAN; CODE -156;
PROCEDURE GetPropGadStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL):LONGINT; CODE -174;
PROCEDURE SetPropGadStruct(base{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
id{R.D0}:CARDINAL; item{R.D1}:CARDINAL;
wert{R.D2}:LONGINT):BOOLEAN; CODE -168;
PROCEDURE MenuDraw(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
window{R.A2}:WindowPtr):BOOLEAN; CODE -180;
PROCEDURE MenuEnd(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
window{R.A2}:WindowPtr):BOOLEAN; CODE -186;
PROCEDURE SetMenuTitle(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD;
string{R.A2}:ADDRESS):BOOLEAN; CODE -192;
PROCEDURE GetMenuTitle(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD):ADDRESS; CODE -198;
PROCEDURE SetMenuStruct(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; item{R.D1}:LONGCARD;
wert{R.D2}:LONGINT):BOOLEAN; CODE -204;
PROCEDURE GetMenuStruct(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD;
item{R.D1}:LONGCARD):LONGINT; CODE -210;
PROCEDURE SetMenuIText(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; itemid{R.D1}:LONGCARD;
string{R.A2}:ADDRESS):BOOLEAN; CODE -216;
PROCEDURE GetMenuIText(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD;
itemid{R.D1}:LONGCARD):ADDRESS; CODE -222;
PROCEDURE SetMenuItemStruct(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; itemid{R.D1}:LONGCARD;
item{R.D2}:LONGCARD; wert{R.D3}:LONGINT):BOOLEAN; CODE -228;
PROCEDURE GetMenuItemStruct(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; itemid{R.D1}:LONGCARD;
item{R.D2}:LONGCARD):LONGINT; CODE -234;
PROCEDURE SetMenusText(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; itemid{R.D1}:LONGCARD;
subid{R.D2}:LONGCARD; string{R.A2}:ADDRESS):BOOLEAN; CODE -240;
PROCEDURE GetMenusText(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; itemid{R.D1}:LONGCARD;
subid{R.D2}:LONGCARD):ADDRESS; CODE -246;
PROCEDURE SetMenuSubStruct(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; itemid{R.D1}:LONGCARD;
subid{R.D2}:LONGCARD; item{R.D3}:LONGCARD;
wert{R.D4}:LONGINT):BOOLEAN; CODE -252;
PROCEDURE GetMenuSubStruct(base{R.A0}:ADDRESS; menu{R.A1}:MenuPtr;
menuid{R.D0}:LONGCARD; itemid{R.D1}:LONGCARD;
subid{R.D2}:LONGCARD; item{R.D3}:LONGCARD):LONGINT; CODE -258;
PROCEDURE ShowScreen(rctadr{R.A0}:ADDRESS; mode{R.D0}:ViewModeSet;
depth{R.D1}:LONGCARD; title{R.A1}:ADDRESS):ScreenPtr; CODE -276;
PROCEDURE RemScreen(rctadr{R.A0}:ADDRESS; screen{R.A1}:ScreenPtr):BOOLEAN; CODE -282;
PROCEDURE Alert(default{R.D0}:INTEGER; string{R.A0}:ADDRESS):INTEGER; CODE -288;
PROCEDURE FileReq(filer{R.A0}:ADDRESS):BOOLEAN; CODE -294;
PROCEDURE FilerCacheFree(filer{R.A0}:ADDRESS):BOOLEAN; CODE -300;
PROCEDURE Waitall(port{R.A0}:MsgPortPtr; message{R.A1}:MessagePtr); CODE -306;
PROCEDURE GadDrawWindow(rctadr{R.A0}:ADDRESS; req{R.A1}:RequesterPtr;
screen{R.A2}:ScreenPtr; title{R.A3}:ADDRESS;
idcmp{R.D0}:LONGINT; flags{R.D1}:LONGINT):WindowPtr; CODE -312;
PROCEDURE GetPattern(rctadr{R.A0}:ADDRESS; index{R.D0}:LONGINT):ADDRESS; CODE -318;
END RCT.def